mod args;
mod chunk;
mod chunk_type;
mod commands;
mod png;
pub use chunk_type::ChunkType;
pub use chunk::Chunk;
pub use png::Png;
pub use args::{Cli, Commands};
use clap::Parser;

pub type Error = Box<dyn std::error::Error>;
pub type Result<T> = std::result::Result<T, Error>;

fn main() -> Result<()> {
    let cli = Cli::parse();
    cli.command.execute()
}

